package com.urea.system.mapper;

import java.util.List;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.urea.system.domain.PayInfo;
import org.apache.ibatis.annotations.Param;

/**
 * 交易记录Mapper接口
 * 
 * @author liuzd
 * @date 2023-08-01
 */
public interface PayInfoMapper  extends BaseMapper<PayInfo>
{
    /**
     * 查询交易记录
     * 
     * @param id 交易记录主键
     * @return 交易记录
     */
    public PayInfo selectPayInfoById(Long id);

    /**
     * 查询交易记录列表
     * 
     * @param payInfo 交易记录
     * @return 交易记录集合
     */
    public List<PayInfo> selectPayInfoList(PayInfo payInfo);

    /**
     * 新增交易记录
     * 
     * @param payInfo 交易记录
     * @return 结果
     */
    public int insertPayInfo(PayInfo payInfo);

    /**
     * 修改交易记录
     * 
     * @param payInfo 交易记录
     * @return 结果
     */
    public int updatePayInfo(PayInfo payInfo);

    /**
     * 删除交易记录
     * 
     * @param id 交易记录主键
     * @return 结果
     */
    public int deletePayInfoById(Long id);

    /**
     * 批量删除交易记录
     * 
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    public int deletePayInfoByIds(Long[] ids);


    /**
     * 查询今日天的消费情况
     * @param userId 终端商
     * @param agentId 代理商
     * @param storeId 门店id
     * @return  结果
     */
    List<PayInfo> sevenPayInfoByDate(@Param("userId") Long userId, @Param("agentId") Long agentId,@Param("storeId")Long storeId);

    /**
     * 查询近7天的加注情况
     * @param userId 终端商
     * @param agentId 代理商
     * @param storeId 门店id
     * @return  结果
     */
    List<PayInfo> sevenAgentInfoByDate(@Param("userId") Long userId, @Param("agentId") Long agentId,@Param("storeId")Long storeId);
}
